# 综合实验一： 题目 C 三年为期
#
# 姓名        : <@FCYXSZY>
# 合作者      : <None>
# 花费时间    : <time.sleep(30)>
# 解题代码    : 

def solve(salary,first,rise):
    l=0
    r=10000
    #4位小数，从0到10000二分。
    notFind=True
    rnd=0
    while(l<=r):
        mid=(l+r)//2
        rnd+=1
        portion=mid/10000
        month=salary/12*portion
        current_savings=0.0
        #计算36月后存款
        for t in range(1,37):
            current_savings+=current_savings*0.04/12
            current_savings+=month
            if(t%6==0):
                month+=month*rise
        #print(current_savings)
        if(abs(current_savings-first)<=100):
            notFind=False
            print("最佳存款比例为: {:.4f}".format(portion+0.0001))
            break
        else:#更新边界
            if(current_savings>first):
                r=mid-1
            else:
                l=mid+1
    if(notFind):
        print("不可能三年存够首付")
    else:
        print("二分查找中的循环次数: {}".format(rnd))
            
#def main():
annual_salary=float(input("输入你的起始年薪: "))
total_cost=1000000.0
semi_annual_raise= .07
solve(annual_salary,total_cost*0.25,semi_annual_raise)
input("请输入Enter结束……")
#if __name__=='__main__':
#    main()